ARMEdit: HPC Services

HPC_ARMEDIT_SWI

HPC_ARMEDIT_SWI
(HPC &0105:&0000)
Call a RISC OS SWI by number

Data sent:0HPC service ID = &0105
+2reason code = &0000
+4SWI number to call
+8value for R0 register on entry to the SWI
+12value for R1 register on entry to the SWI
+16value for R2 register on entry to the SWI
+20value for R3 register on entry to the SWI
+24value for R4 register on entry to the SWI
+28value for R5 register on entry to the SWI
+32value for R6 register on entry to the SWI
+36value for R7 register on entry to the SWI
+40value for R8 register on entry to the SWI
+44value for R9 register on entry to the SWI
+48

Data returned:0return code
If the return code is &0001
+4RISC OS style error block returned by SWI
If the return code is &0000
+260value of R0 register on exit from the SWI
+264value of R1 register on exit from the SWI
+268value of R2 register on exit from the SWI
+272value of R3 register on exit from the SWI
+276value of R4 register on exit from the SWI
+280value of R5 register on exit from the SWI
+284value of R6 register on exit from the SWI
+288value of R7 register on exit from the SWI
+292value of R8 register on exit from the SWI
+296value of R9 register on exit from the SWI
+300

Use: Calls a specified RISC OS SWI by number. The SWI is always called with the X (error returning) bit set.

Note that the reply packet is always the same length, regardless of whether the SWI returned an error.


Related services:HPC_ARMEDIT_READ, HPC_ARMEDIT_WRITE, HPC_ARMEDIT_ALLOC, HPC_ARMEDIT_FREE

[Contents] [Up] Copyright © Alexander Thoukydides, 2001